#ifndef _CONSTS_H
#define _CONSTS_H

namespace CONSTS{

#define MATH_PI 3.14159265358979323846

const int T_DIST_ROW = 44;
const int T_DIST_COL = 7;
const double T_DIST_TABLE[T_DIST_ROW][T_DIST_COL] = {
    { 0, 0.1, 0.05, 0.025, 0.01, 0.005, 0.0005 },
    { 1, 3.07768, 6.31375, 12.70620, 31.82052, 63.65674, 636.61925, },
    { 2, 1.88562, 2.91999, 4.30265, 6.96456, 9.92484, 31.59905, },
    { 3, 1.63774, 2.35336, 3.18245, 4.54070, 5.84091, 12.92398, },
    { 4, 1.53321, 2.13185, 2.77645, 3.74695, 4.60409, 8.61030, },
    { 5, 1.47588, 2.01505, 2.57058, 3.36493, 4.03214, 6.86883, },
    { 6, 1.43976, 1.94318, 2.44691, 3.14267, 3.70743, 5.95882, },
    { 7, 1.41492, 1.89458, 2.36462, 2.99795, 3.49948, 5.40788, },
    { 8, 1.39682, 1.85955, 2.30600, 2.89646, 3.35539, 5.04131, },
    { 9, 1.38303, 1.83311, 2.26216, 2.82144, 3.24984, 4.78091, },
    { 10, 1.37218, 1.81246, 2.22814, 2.76377, 3.16927, 4.58689, },
    { 11, 1.36343, 1.79588, 2.20099, 2.71808, 3.10581, 4.43698, },
    { 12, 1.35622, 1.78229, 2.17881, 2.68100, 3.05454, 4.31779, },
    { 13, 1.35017, 1.77093, 2.16037, 2.65031, 3.01228, 4.22083, },
    { 14, 1.34503, 1.76131, 2.14479, 2.62449, 2.97684, 4.14045, },
    { 15, 1.34061, 1.75305, 2.13145, 2.60248, 2.94671, 4.07277, },
    { 16, 1.33676, 1.74588, 2.11991, 2.58349, 2.92078, 4.01500, },
    { 17, 1.33338, 1.73961, 2.10982, 2.56693, 2.89823, 3.96513, },
    { 18, 1.33039, 1.73406, 2.10092, 2.55238, 2.87844, 3.92165, },
    { 19, 1.32773, 1.72913, 2.09302, 2.53948, 2.86093, 3.88341, },
    { 20, 1.32534, 1.72472, 2.08596, 2.52798, 2.84534, 3.84952, },
    { 21, 1.32319, 1.72074, 2.07961, 2.51765, 2.83136, 3.81928, },
    { 22, 1.32124, 1.71714, 2.07387, 2.50832, 2.81876, 3.79213, },
    { 23, 1.31946, 1.71387, 2.06866, 2.49987, 2.80734, 3.76763, },
    { 24, 1.31784, 1.71088, 2.06390, 2.49216, 2.79694, 3.74540, },
    { 25, 1.31635, 1.70814, 2.05954, 2.48511, 2.78744, 3.72514, },
    { 26, 1.31497, 1.70562, 2.05553, 2.47863, 2.77871, 3.70661, },
    { 27, 1.31370, 1.70329, 2.05183, 2.47266, 2.77068, 3.68959, },
    { 28, 1.31253, 1.70113, 2.04841, 2.46714, 2.76326, 3.67391, },
    { 29, 1.31143, 1.69913, 2.04523, 2.46202, 2.75639, 3.65941, },
    { 30, 1.31042, 1.69726, 2.04227, 2.45726, 2.75000, 3.64596, },
    { 40, 1.30308, 1.68385, 2.02108, 2.42326, 2.70446, 3.55097, },
    { 50, 1.29871, 1.67591, 2.00856, 2.40327, 2.67779, 3.49601, },
    { 60, 1.29582, 1.67065, 2.00030, 2.39012, 2.66028, 3.46020, },
    { 70, 1.29376, 1.66691, 1.99444, 2.38081, 2.64790, 3.43501, },
    { 80, 1.29222, 1.66412, 1.99006, 2.37387, 2.63869, 3.41634, },
    { 90, 1.29103, 1.66196, 1.98667, 2.36850, 2.63157, 3.40194, },
    { 100, 1.29007, 1.66023, 1.98397, 2.36422, 2.62589, 3.39049, },
    { 110, 1.28930, 1.65882, 1.98177, 2.36073, 2.62126, 3.38118, },
    { 120, 1.28865, 1.65765, 1.97993, 2.35782, 2.61742, 3.37345, },
    { 200, 1.286, 1.653, 1.972, 2.345, 2.601, 3.34 },
    { 500, 1.283, 1.648, 1.965, 2.334, 2.586, 3.31 },
    { 1000, 1.282, 1.646, 1.962, 2.33, 2.581, 3.3 },
    { 1000000000, 1.28155, 1.64485, 1.95996, 2.32635, 2.57583, 3.29053, },
};

}

#endif